home *** CD-ROM | disk | FTP | other *** search
/ Mac Expert 2 / Mac_Expert_2.iso / Applications / Fontographer® 4.0.2 / Disk 2 / PC Font Access / PC Font Access.rsrc / STR#_8002.txt < prev    next >
Text File  |  1993-06-17  |  5KB  |  361 lines

  1. ] noaccess def
  2.  
  3. } executeonly
  4.  
  5. ifelse
  6.  
  7. ifelse}
  8.  
  9. ifelse}
  10.  
  11. {pop 3}
  12.  
  13. {/strtlck get exec}
  14.  
  15. {dup /strtlck known
  16.  
  17. {/startlock get exec}
  18.  
  19. dup /startlock known
  20.  
  21. {1183615869 systemdict /internaldict get exec
  22.  
  23. {pop 3}
  24.  
  25. {systemdict /internaldict known not
  26.  
  27. executeonly
  28.  
  29. {currentpoint grestore gsave currentpoint newpath moveto}
  30.  
  31. {gsave currentpoint newpath moveto} executeonly
  32.  
  33. } if
  34.  
  35. ifelse executeonly
  36.  
  37. {{1183615869 userdict /internaldict get exec /FlxProc get exec}}
  38.  
  39. {{1183615869 systemdict /internaldict get exec /FlxProc get exec}}
  40.  
  41. {systemdict /internaldict known
  42.  
  43. ifelse
  44.  
  45. ifelse}
  46.  
  47. ifelse}
  48.  
  49. exch /FlxProc exch put true}
  50.  
  51. {1183615869 systemdict /internaldict get exec
  52.  
  53. {false}
  54.  
  55. dup length exch maxlength eq
  56.  
  57. {1183615869 systemdict /internaldict get exec
  58.  
  59. exch /FlxProc exch put true}
  60.  
  61. {1183615869 userdict /internaldict get exec
  62.  
  63. systemdict /internaldict known not
  64.  
  65. {
  66.  
  67. {pop true exch restore}
  68.  
  69. exch
  70.  
  71. executeonly
  72.  
  73. /exec cvx /end cvx ] cvx
  74.  
  75. systemdict /currentpacking known {exch setpacking} if
  76.  
  77. }
  78.  
  79. epY epX
  80.  
  81. ifelse
  82.  
  83. x3 y3 x4 y4 x5 y5 curveto}
  84.  
  85. {x0 y0 x1 y1 x2 y2 curveto
  86.  
  87. {x5 y5 lineto }
  88.  
  89. x2 x5 eq y2 y5 eq or
  90.  
  91. } ifelse
  92.  
  93. } ifelse
  94.  
  95. } if
  96.  
  97. /x1 x1 eShift add def /x2 x2 eShift add def /x3 x3 eShift add def
  98.  
  99. x2 sub /eShift exch def
  100.  
  101. ex cy flipXY -1 eq {exch} if itransform pop
  102.  
  103. erode {/ex ex .5 add def} if
  104.  
  105. /ex ex ceiling ex sub ex floor add def
  106.  
  107. /ex cx dX add def
  108.  
  109. erode {/cx cx .5 sub def} if
  110.  
  111. /erode PaintType 2 ne erosion .5 ge and def
  112.  
  113. ifelse
  114.  
  115. {pop dX 0 lt {-1}{1} ifelse /dX exdef}
  116.  
  117. {/dX exdef}
  118.  
  119. dX round dup 0 ne
  120.  
  121. /dX x2 c1x2 sub round 0 dtransform flipXY -1 eq {exch} if pop def
  122.  
  123. /cy exch def /cx exch def
  124.  
  125. c1x2 c1y2 transform flipXY -1 eq {exch} if
  126.  
  127. x2 c1x2 sub abs 0.001 gt {
  128.  
  129. dX dmin lt PickCoords
  130.  
  131. flipXY -1 eq {exch} if pop abs def
  132.  
  133. /dX c3x2 c1x2 sub round 0 dtransform
  134.  
  135. /c1y0 c3y0 def /c1y1 c3y1 def /c2y0 c4y0 def /c2y1 c4y1 def
  136.  
  137. /c2x0 c4x0 xshrink def /c2x1 c4x1 xshrink def
  138.  
  139. /c1x0 c3x0 xshrink def /c1x1 c3x1 xshrink def
  140.  
  141. /xshrink {c4x2 sub shrink mul c4x2 add} def
  142.  
  143. {0}{c1x2 c4x2 sub c3x2 c4x2 sub div abs} ifelse def
  144.  
  145. {/shrink c3x2 c4x2 eq
  146.  
  147. {false PickCoords }
  148.  
  149. {flipXY 0 eq c3x2 c4x2 eq or
  150.  
  151. }
  152.  
  153. } ifelse
  154.  
  155. } if
  156.  
  157. eShift add def
  158.  
  159. /y1 y1 eShift add def /y2 y2 eShift add def /y3 y3
  160.  
  161. y2 sub /eShift exch def
  162.  
  163. ey cx flipXY 1 eq {exch} if itransform exch pop
  164.  
  165. erode {/ey ey 0.5 add def} if
  166.  
  167. /ey ey ceiling ey sub ey floor add def
  168.  
  169. /ey cy dY add def
  170.  
  171. erode {/cy cy 0.5 sub def} if
  172.  
  173. /erode PaintType 2 ne erosion 0.5 ge and def
  174.  
  175. ifelse
  176.  
  177. {pop dY 0 lt {-1}{1} ifelse /dY exdef}
  178.  
  179. {/dY exdef }
  180.  
  181. dY round dup 0 ne
  182.  
  183. if pop def
  184.  
  185. /dY 0 y2 c1y2 sub round dtransform flipXY 1 eq {exch}
  186.  
  187. /cx exch def /cy exch def
  188.  
  189. c1x2 c1y2 transform flipXY 1 eq {exch} if
  190.  
  191. y2 c1y2 sub abs 0.001 gt {
  192.  
  193. dY dmin lt PickCoords
  194.  
  195. dtransform flipXY 1 eq {exch} if pop abs def
  196.  
  197. /dY 0 c3y2 c1y2 sub round
  198.  
  199. /c1x0 c3x0 def /c1x1 c3x1 def /c2x0 c4x0 def /c2x1 c4x1 def
  200.  
  201. /c2y0 c4y0 yshrink def /c2y1 c4y1 yshrink def
  202.  
  203. /c1y0 c3y0 yshrink def /c1y1 c3y1 yshrink def
  204.  
  205. /yshrink {c4y2 sub shrink mul c4y2 add} def
  206.  
  207. {0}{c1y2 c4y2 sub c3y2 c4y2 sub div abs} ifelse def
  208.  
  209. {/shrink c3y2 c4y2 eq
  210.  
  211. {false PickCoords}
  212.  
  213. {flipXY 0 eq c3y2 c4y2 eq or
  214.  
  215. yflag
  216.  
  217. } if
  218.  
  219. ifelse
  220.  
  221. {pop}
  222.  
  223. {/erosion get /erosion exch def}
  224.  
  225. /erosion known
  226.  
  227. 1183615869 systemdict /internaldict get exec dup
  228.  
  229. systemdict /internaldict known {
  230.  
  231. /erosion 1 def
  232.  
  233. ifelse
  234.  
  235. ifelse }
  236.  
  237. {/flipXY 0 def}
  238.  
  239. {/flipXY 1 def}
  240.  
  241. {mtx 1 get abs .00001 lt mtx 2 get abs .00001 lt or
  242.  
  243. {/flipXY -1 def}
  244.  
  245. mtx 0 get abs .00001 lt mtx 3 get abs .00001 lt or
  246.  
  247. mtx currentmatrix pop
  248.  
  249. } def
  250.  
  251. /y2 exdef /x2 exdef /y1 exdef /x1 exdef /y0 exdef /x0 exdef
  252.  
  253. /y5 exdef /x5 exdef /y4 exdef /x4 exdef /y3 exdef /x3 exdef
  254.  
  255. ifelse
  256.  
  257. {c3x0 c3y0 c3x1 c3y1 c3x2 c3y2 c4x0 c4y0 c4x1 c4y1 c4x2 c4y2}
  258.  
  259. {c1x0 c1y0 c1x1 c1y1 c1x2 c1y2 c2x0 c2y0 c2x1 c2y1 c2x2 c2y2}
  260.  
  261. /PickCoords {
  262.  
  263. /yflag c1y2 c3y2 sub abs c1x2 c3x2 sub abs gt def
  264.  
  265. /c1y2 exdef /c1x2 exdef /c2x2 c4x2 def /c2y2 c4y2 def
  266.  
  267. /c3y2 exdef /c3x2 exdef /c3y1 exdef /c3x1 exdef /c3y0 exdef /c3x0 exdef
  268.  
  269. /c4y2 exdef /c4x2 exdef /c4y1 exdef /c4x1 exdef /c4y0 exdef /c4x0 exdef
  270.  
  271. /epX exdef /epY exdef
  272.  
  273. /dmin exch abs 100 div def
  274.  
  275. /exdef {exch def} def
  276.  
  277. grestore
  278.  
  279. } if
  280.  
  281. 1183615869 systemdict /internaldict get exec /$FlxDict get begin
  282.  
  283. end} if
  284.  
  285. /$FlxDict currentdict put
  286.  
  287. 1183615869 systemdict /internaldict get exec
  288.  
  289. /mtx matrix def
  290.  
  291. 100 dict begin
  292.  
  293. /$FlxDict known not {
  294.  
  295. 1183615869 systemdict /internaldict get exec
  296.  
  297. systemdict /internaldict known {
  298.  
  299. {
  300.  
  301. systemdict /currentpacking known {currentpacking true setpacking} if
  302.  
  303. { 100 dict /begin cvx /mtx matrix /def cvx } if
  304.  
  305. systemdict /internaldict known not
  306.  
  307. [
  308.  
  309. ifelse
  310.  
  311. /FlxProc known {save true} {false} ifelse}
  312.  
  313. 1183615869 userdict /internaldict get exec
  314.  
  315. } if
  316.  
  317. bind executeonly put
  318.  
  319. dup 14 get 1 25 dict put
  320.  
  321. }
  322.  
  323. ifelse
  324.  
  325. {/internaldict errordict /invalidaccess get exec}
  326.  
  327. {pop 0}
  328.  
  329. dup 1183615869 eq
  330.  
  331. {/internaldict errordict /invalidaccess get exec} if
  332.  
  333. dup type /integertype ne
  334.  
  335. {/internaldict errordict /invalidaccess get exec} if
  336.  
  337. {count 0 eq
  338.  
  339. userdict /internaldict
  340.  
  341. {userdict /internaldict known not {
  342.  
  343. /FlxProc known {save true} {false} ifelse}
  344.  
  345. {1183615869 systemdict /internaldict get exec
  346.  
  347. [systemdict /internaldict known
  348.  
  349. /OtherSubrs
  350.  
  351. %.that their outline data has not come from an Adobe typeface.
  352.  
  353. %.Used in Fontographer with permission, provided users confirm
  354.  
  355. %.This code to be used for Flex and hint replacement.
  356.  
  357. %.All rights reserved.
  358.  
  359. %.Copyright (c) 1987 Adobe Systems Incorporated.
  360.  
  361.